#!/bin/sh
#
#  Copyright (C) 2002-2005 RealVNC Ltd.
#
#  This is free software; you can redistribute it and/or modify
#  it under the terms of the GNU General Public License as published by
#  the Free Software Foundation; either version 2 of the License, or
#  (at your option) any later version.
#
#  This software is distributed in the hope that it will be useful,
#  but WITHOUT ANY WARRANTY; without even the implied warranty of
#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#  GNU General Public License for more details.
#
#  You should have received a copy of the GNU General Public License
#  along with this software; if not, write to the Free Software
#  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,
#  USA.
#

#
# vncinstall - copy the VNC programs to an installation directory.
# Also tries to install the manual pages somewhere sensible.
#

if [ $# -lt 1 -o $# -gt 3 -o ! -d "$1" ]; then 
  echo "usage: $0 <installation-directory> [<man-page-directory>] [<module-directory>]"
  echo "e.g.   $0 /usr/local/bin"
  exit 1
fi

dst=$1
shift
if [ $# -gt 0 ]; then
  mandst="$1/man1"
  shift
  if [ $# -gt 0 ]; then
    moduledst=$1
    shift
  else
    moduledst=/usr/X11R6/lib/modules/extensions
  fi
else
  if [ "`basename $dst`" = bin ]; then
    mandst="`dirname $dst`/man/man1"
    if [ ! -d "$mandst" -a "$dst" = /usr/bin ]; then
      mandst=/usr/share/man/man1
    fi
  fi
fi

if [ "$mandst" != "" ]; then
  if [ ! -d "$mandst" -o ! -w "$mandst" ]; then
    echo "Can't install manual pages to $mandst"
    mandst=""
  fi
fi

for f in xc/programs/Xserver/Xvnc vncviewer/vncviewer vncpasswd/vncpasswd \
	 vncconfig/vncconfig vncserver x0vncserver/x0vncserver; do
  if [ ! -f $f ]; then
    echo "Couldn't find $f"
  else
    if cmp -s $f $dst/`basename $f`; then
      echo "`basename $f` hasn't changed"
    else
      echo "Copying $f to $dst"
      cp -pf $f $dst
      chmod 0555 $dst/`basename $f`
    fi


    if [ -f $f.man ]; then
      if [ "$mandst" != "" -a -d "$mandst" ]; then
        if cmp -s $f.man $mandst/`basename $f.1`; then
          echo "`basename $f.man` hasn't changed"
        else
          echo "Copying $f.man to $mandst/`basename $f.1`"
          cp -pf $f.man $mandst/`basename $f.1`
          chmod 0444 $mandst/`basename $f.1`
        fi
      fi
    fi
  fi

done

vncModule=xc/programs/Xserver/vnc/module/vnc.so
if [ -f "$vncModule" -a -d "$moduledst" ]; then
  if cmp -s $vncModule $moduledst/`basename $vncModule`; then
    echo "`basename $vncModule` hasn't changed"
  else
    echo "Copying $vncModule to $moduledst"
    cp -pf $vncModule $moduledst
    chmod 0555 $moduledst/`basename $vncModule`
  fi
fi
